1 using System.Collections;
2 using
System.Collections.Generic;
3 using
UnityEngine;
4
5 public
class StarsLocker : MonoBehaviour
6 {
7     
[SerializeField]
8     
private PuzzleGameSaver puzzleGameSaver;
9
10     
[SerializeField]
11     
private GameObject[] level1Stars, level2Stars, level3Stars, level4Stars, level5Stars;
12
13     
public int[] candyPuzzleLevelStars;
14     
public int[] transportPuzzleLevelStars;
15     
public int[] shapePuzzleLevelStars;
16
17     
void Awake()
18     {
19         
20     }
21     
22     
// Use this for initialization
23     
void Start()
24     {
25
26     }
27
28     
public void ActivateStars(int level, string selectedPuzzle)
29     {
30         GetStars();
31
32         
int stars;
33
34         
switch (selectedPuzzle)
35         {
36
37             
case "Candy Puzzle":
38
39                 stars = candyPuzzleLevelStars[level];
40                 ActivateLevelStars(level, stars);
41
42                 
break;
43
44             
case "Transport Puzzle":
45
46                 stars = transportPuzzleLevelStars[level];
47                 ActivateLevelStars(level, stars);
48
49                 
break;
50
51             
case "Shape Puzzle":
52
53                 stars = shapePuzzleLevelStars[level];
54                 ActivateLevelStars(level, stars);
55
56                 
break;
57
58         }
59     }
60
61     
void ActivateLevelStars(int level, int looper)
62     {
63         
switch (level)
64         {
65
66             
case 0:
67
68                 
if (looper != 0)
69                 {
70                     
for (int i = 0; i < looper; i++)
71                     {
72                         level1Stars[i].SetActive(
true);
73                     }
74                 }
75
76                 
break;
77
78             
case 1:
79
80                 
if (looper != 0)
81                 {
82                     
for (int i = 0; i < looper; i++)
83                     {
84                         level2Stars[i].SetActive(
true);
85                     }
86                 }
87
88                 
break;
89
90             
case 2:
91
92                 
if (looper != 0)
93                 {
94                     
for (int i = 0; i < looper; i++)
95                     {
96                         level3Stars[i].SetActive(
true);
97                     }
98                 }
99
100                 
break;
101
102             
case 3:
103
104                 
if (looper != 0)
105                 {
106                     
for (int i = 0; i < looper; i++)
107                     {
108                         level4Stars[i].SetActive(
true);
109                     }
110                 }
111
112                 
break;
113
114             
case 4:
115
116                 
if (looper != 0)
117                 {
118                     
for (int i = 0; i < looper; i++)
119                     {
120                         level5Stars[i].SetActive(
true);
121                     }
122                 }
123
124                 
break;
125
126         }
127     }
128
129     
public void DeactivateStars()
130     {
131         
for(int i = 0; i < level1Stars.Length; i++)
132         {
133             level1Stars[i].SetActive(
false);
134             level2Stars[i].SetActive(
false);
135             level3Stars[i].SetActive(
false);
136             level4Stars[i].SetActive(
false);
137             level5Stars[i].SetActive(
false);
138         }
139     }
140
141     
void GetStars()
142     {
143         candyPuzzleLevelStars = puzzleGameSaver.candyPuzzleLevelStars;
144         transportPuzzleLevelStars = puzzleGameSaver.transportPuzzleLevelStars;
145         shapePuzzleLevelStars = puzzleGameSaver.shapePuzzleLevelStars;
146     }
147
148 }



Full source code giải đố hình đơn giản 16.634 lượt xem

Gõ tìm kiếm nhanh...